<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>内置对象-Array-元素操作函数</title>
    <script>
      /* 
        数组元素增删函数
        push(n1,n2,n3,...)       函数将指定的元素添加到数组的末尾，并返回新的数组长度
        unshift(n1,n2,n3,...)    函数将指定元素添加到数组的开头，并返回数组的新长度

        pop()                    函数从数组中删除最后一个元素，并返回该元素的值
        shift()                  函数从数组中删除第一个元素，并返回该元素的值
        
        万能方法:
        splice(start, deleteCount, item1, item2, itemN)        函数从数组中添加或者删除一个到多个元素,并且返回删除元素所组成的数组,如果没有删除元素,则返回数组为空
                参数的含义:
                start                       从哪个下标开始删除
                deleteCount                 需要删除元素的个数
                item1, item2,..., itemN     要添加的一个或者多个元素


        注意: 此处所有函数都是直接对原数组进行操作,但是返回类型不一定相同!
      */
      const arr = [1, 2, 3, 4, 5]

      //在arr数组尾部追加一个或者多个元素
      //注意: push()函数尾部追加元素后返回数组新长度,这个长度如果不用可以不接收
      /* let newLength = arr.push(6)
      console.log(newLength) */
      //arr.push(6, 7, 8)

      //在arr数组头部追加一个或者多个元素
      //arr.unshift(-1, 0)

      //删除数组最后一个元素
      //arr.pop()

      //arr.shift()

      //尾部追加一个或者多个元素
      //arr.splice(arr.length, 0, 7, 8, 9)

      //头部追加一个或者多个元素
      //arr.splice(0, 0, -1, -2, -3, -4)

      //尾部删除一个或者多个元素
      //arr.splice(arr.length - 3, 3)

      //头部删除一个或者多个元素
      //arr.splice(0, 3)

      //中间添加一个或者多个元素
      //arr.splice(1, 0, 888, 999)

      //中间删除一个或者多个元素
      //arr.splice(1, 2)

      //删除和添加同时做
      arr.splice(1, 3, 666, 777, 888, 999)

      console.log(arr)
    </script>
  </head>
  <body></body>
</html>
